#pragma once
#include "IGameState.h"

class CSGD_MessageSystem;
class CSGD_EventSystem;
class IMessage;

class CBitmapFont;
class OptionsState : public IGameState
{
public:
	static OptionsState* GetInstance();

	virtual void Enter();
	virtual void Exit();						
	virtual bool Input();					
	virtual void Update( float fElapsedTime );	
	virtual void Render();	
	bool Keyboard();
	void SaveSoundInfo() const;
	void LoadSoundInfo();
	int GetMusVol() {return (int)musVol;}
	int GetSfxVol() {return (int)sfxVol;}

private:
	OptionsState();
	virtual ~OptionsState();
	OptionsState(const OptionsState&);
	OptionsState& operator= (const OptionsState&);

	static void MessageProc(IMessage* pMsg);

	int cursor, titleImgID;
	float musVol, sfxVol;
		bool yUp;
	bool yDown;
	bool xRight;
	bool xLeft;

};